package kr.or.kosta.otr.service.companyservice;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;

import kr.or.kosta.otr.utill.CompanyListVO;
import kr.or.kosta.otr.vo.CompanyReviewVO;
import kr.or.kosta.otr.vo.CompanyVO;
import kr.or.kosta.otr.vo.IndustryVO;
import kr.or.kosta.otr.vo.RegionVO;
import kr.or.kosta.otr.vo.ReportVO;

public interface CompanyService {
	ArrayList<CompanyVO> getCompanyInfo(HashMap<String, Object> map) throws SQLException;
	ArrayList<IndustryVO> getAllIndustry() throws SQLException;
	ArrayList<RegionVO> getAllRegion() throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByPromotion()throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByWelfare()throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByCulture()throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByHoliday()throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByExecutive()throws SQLException;
	ArrayList<Integer> getAllCompanyOrderByOverdue()throws SQLException;
	CompanyReviewVO getCompanyReviewByScoreId(int scoreId)throws SQLException;
	CompanyVO getOneCompany(int companyId)throws SQLException;
	ArrayList<CompanyReviewVO> getAllCompanyReview()throws SQLException;
	float getTotalScoreOfChance(int companyId) throws SQLException;
	float getTotalScoreOfWelfare(int companyId) throws SQLException;
	float getTotalScoreOfCulture(int companyId) throws SQLException;
	float getTotalScoreOfHoliday(int companyId) throws SQLException;
	float getTotalScoreOfExecutive(int companyId) throws SQLException;
	float getTotalScoreOfOverdue(int companyId) throws SQLException;
	float getTotalScoreOfTotal(int companyId) throws SQLException;
	ArrayList<CompanyVO> customCompany(HashMap<String, Object>map)throws SQLException;
	int isExistCompanyReviewVerifyByCompanyId(int companyId)throws SQLException;
	CompanyListVO getCompanyInfoPage(HashMap<String, Object>map,HashMap<String, Object> tmap)throws SQLException;
	int writeReport(ReportVO vo)throws SQLException;
}
